package com.huang.usercenter.service;

import com.huang.usercenter.model.domain.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sun.org.apache.xpath.internal.operations.Bool;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* @author 14748
* @description 针对表【user(用户)】的数据库操作Service
* @createDate 2023-02-03 14:23:46
*/
public interface UserService {

    /**
     *
     * @param userAccount 用户账户
     * @param password 用户密码
     * @param checkPassword 校验密码
     * @return 用户id
     */
    long userRegister(String userAccount, String password, String checkPassword, String planetCode);

    /**
     * @param userAccount 用户账户
     * @param password    用户密码
     * @param request
     * @return 用户信息
     */
    User userLogin(String userAccount, String password, HttpServletRequest request);

    /**
     * 查询所有用户
     *
     * @param username 可选值 用户名称
     * @return 用户列表
     */
    List<User> SearchUsers(String username);

    /**
     * 查询存储在session中的当前用户
     *
     * @param request
     * @return
     */
    User getCurrentUser(HttpServletRequest request);

    /**
     * 退出登录
     *
     * @param request
     * @return 1 表示退出成功
     */
    int logout(HttpServletRequest request);

    boolean removeById(long id);

    Boolean updateById(User user);

    Boolean saveUser(User user);
}
